package top.suven.base.http.admin.old.service;

import top.suven.base.core.mybatis.PageData;
import top.suven.base.http.admin.old.model.SysAdmin;
import top.suven.base.http.admin.old.vo.response.SysAdminResponseVo;

import java.util.List;

/**
 * @Title: SysAdminService.java
 * @Description: 管理员的业务处理服务类
 * @author lixiangling
 * @date   2018/08/07 14:49:17
 * @version  V1.0.0
 * ----------------------------------------------------------------------------
 *  modifyer    modifyTime                 comment
 *
 * ----------------------------------------------------------------------------
 *
 */
public interface SysAdminService {
    /**
     * @Title: 获取管理员分页信息
     * @Description:
     * @param sysAdmin @{Link SysAdmin}
     * @return
     * @throw
     * @author lixiangling
     * @date 2018/08/07 14:49:17
     *  --------------------------------------------------------
     *  modifyer    modifyTime                 comment
     *
     *  --------------------------------------------------------
     */
    public PageData<SysAdminResponseVo> getSysAdminPage(SysAdmin sysAdmin, int start, int pageSize);
    /**
     * @Title: 获取管理员列表
     * @Description:
     * @param sysAdmin @{Link SysAdmin}
     * @return
     * @throw
     * @author lixiangling
     * @date 2018/08/07 14:58:25
     *  --------------------------------------------------------
     *  modifyer    modifyTime                 comment
     *
     *  --------------------------------------------------------
     */
    public List<SysAdmin> getSysAdminList(SysAdmin sysAdmin);
    /**
     * @Title: 新增管理员信息
     * @Description:
     * @param sysAdmin @{Link SysAdmin}
     * @return
     * @throw
     * @author lixiangling
     * @date 2018/08/07 14:49:17
     *  --------------------------------------------------------
     *  modifyer    modifyTime                 comment
     *
     *  --------------------------------------------------------
     */
    public void addSysAdmin(SysAdmin sysAdmin);
    /**
    * @Title: 修改管理员信息
    * @Description:
    * @param sysAdmin @{Link SysAdmin}
    * @return
    * @throw
    * @author lixiangling
    * @date 2018/08/07 14:49:17
    *  --------------------------------------------------------
    *  modifyer    modifyTime                 comment
    *
    *  --------------------------------------------------------
    */
    public void updSysAdmin(SysAdmin sysAdmin);
   /**
    * @Title: 获取管理员信息
    * @Description:
    * @param
    * @return
    * @throw
    * @author lixiangling
    * @date 2018/08/07 14:49:17
    *  --------------------------------------------------------
    *  modifyer    modifyTime                 comment
    *
    *  --------------------------------------------------------
    */
    public SysAdmin getSysAdmin(String adminCode);
    /**
     * @Title: 删除管理员信息
     * @Description:id @{Link Long[]}
     * @param
     * @return
     * @throw
     * @author lixiangling
     * @date 2018/08/07 14:49:17
     *  --------------------------------------------------------
     *  modifyer    modifyTime                 comment
     *
     *  --------------------------------------------------------
     */
    public void del(Long[] ids);
   /**
    * @Title: 启用管理员信息
    * @Description:id @{Link Long[]}
    * @param
    * @return
    * @throw
    * @author lixiangling
    * @date 2018/08/07 14:49:17
    *  --------------------------------------------------------
    *  modifyer    modifyTime                 comment
    *
    *  --------------------------------------------------------
    */
    public void turnOn(Long[] ids);
   /**
    * @Title: 禁用管理员信息
    * @Description:id @{Link Long[]}
    * @param
    * @return
    * @throw
    * @author lixiangling
    * @date 2018/08/07 14:49:17
    *  --------------------------------------------------------
    *  modifyer    modifyTime                 comment
    *
    *  --------------------------------------------------------
    */
    public void turnOff(Long[] ids);
}